home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 February / EnigmA AMIGA RUN 15 (1997)(G.R. Edizioni)(IT)[!][issue 1997-02][PLANET CD V].iso / enigma / earcd / utility / utilwb / saymore.lha / SayMore.doc < prev    next >
Text File  |  1997-01-09  |  10KB  |  244 lines

  1.                   SayMore Version 0.33
  2.                      © 1996 - 1997
  3.                 By Kenton A. Groombridge
  4.  
  5. Why the year long wait for so little change:
  6.  
  7.    I took a second job on top of my regular job.  This was
  8. keeping me very busy.  I tinkered with the program a little
  9. bit here and there, but didn't get serious with it.  Now I
  10. am getting ready to go to Heidelberg, Germany, and quit my
  11. second job.  In case you didn't know, I am in the U.S. Army.
  12. Well anyway, I have some free time on my hands, so I am going
  13. to try to finish this program.  I am seriously looking at
  14. using ClassAct to do this.  I hate MUI.  MUI is the totally
  15. wrong approach to Amiga programming.  It is large, it is slow
  16. and in makes you the user pay for it.  ClassAct is a tool for
  17. the programmer and you the user do not pay a cent for it.
  18. When I get to Germany, I will probably purchase ClassAct and
  19. make SayMore the program I have been talking about in my
  20. "To Do" list.  I am going to try to keep my email address
  21. listed below active for a while, but if you try emailing me
  22. and can not get through, wait for the next post of SayMore
  23. and I will have my new email address included.
  24.  
  25. Introduction:
  26.  
  27.    SayMore is a program designed to replace Say.  Say was fine 
  28. for Workbench 1.3, but the Say program included with 2.0X did not 
  29. have the ability to change most of the options in the new 
  30. narrator.device.
  31.  
  32.    There are a couple programs similar to SayMore currently on 
  33. Aminet.  These programs have severe memory leaks and are not 
  34. system friendly.  A considerable amount of time and effort has 
  35. gone into SayMore to ensure that it is safe.  It is near 
  36. impossible for me to test all the limits of SayMore, but all test 
  37. have proven that it is completely 100% OS friendly and has no 
  38. memory leaks.
  39.  
  40. Disclaimer:
  41.  
  42.    The use of this program is on your own risk. There is no 
  43. liability or responsibility for any damage caused by the program.
  44.  
  45. Copyright:
  46.  
  47.    SayMore is free to be spread on public-domain and shareware 
  48. disks, as long as they  are sold for a reasonable charge.
  49.  
  50. Use of the program:
  51.  
  52.    I do not plan to charge for the use of SayMore, but I have
  53. coined the term caveatware.  Caveatware means that you may use
  54. the program with the following stipulations.
  55.  
  56. 1.  If English is your native language, please try to speak it 
  57. correctly.  I know that my English is not always correct, but I 
  58. am trying to improve it.  Some of by pet peeves are using the 
  59. word "gender" when you mean "sex."  As one person who sent email
  60. to me put it, "Gender is the attribute of a word and not a
  61. person."  This is all part of political correctness which I
  62. despise.
  63.  
  64. 2.  Write a program for the Amiga.  It doesn't matter how big
  65. or small.  Think of something you like, or even find a program
  66. for another platform and port it to the Amiga.  You would be
  67. surprised on how much source code is available for free.
  68.  
  69. 3.  If you write software for the Amiga, do not use MUI.
  70.  
  71. 4.  If you write Amiga software, and charge a fee for what you
  72. write, please consider discounts for other Amiga software 
  73. authors.
  74.  
  75. 5.  Send a message to me letting me know that you use the
  76. program.  I would greatly appreciate some input on what you would 
  77. like to see added or changed to the program.
  78.  
  79. 6.  Bug who ever owns the Amiga at this time to include
  80. narrator.device and translator.library with future releases of
  81. Workbench.
  82.  
  83. 6.  More to follow.
  84.  
  85. Installation:
  86.  
  87.    For any CPU, copy the SayMore icon and executable to any
  88. directory.  For 68020+ CPUs, copy the SayMore.020 icon and
  89. executeable to any directory.  Rename the files is desired.
  90.  
  91. Required:
  92.  
  93.    As far as I know, this program requires Workbench 2.04+, but 
  94. it has not been tested on all platforms.  It was written on an  
  95. Amiga 4000/40 and tested on an A2000/GVP 040/Workbench 3.1.
  96. Remember that it requires the new narrator.device and
  97. translator.library included with Workbench 2.0X.  As far as I
  98. know, the only way to legally get these files is to own one of
  99. these versions of Workbench.
  100.  
  101. Usage:
  102.  
  103.    SayMore pretty much works like the old "Say" program.  It
  104. supports history and cut and paste.  Use Right Amiga-C to copy
  105. from another window, and Right Amiga-V to paste in the SayMore
  106. window.  It may act quirky if there are carriage returns or
  107. line feeds at the end of each line.
  108.  
  109. To quit the program, type CTRL-\ in the input window, hit
  110. "ENTER" on a blank line, or use the left mouse button to
  111. close the input window.
  112.  
  113. Reporting errors:
  114.  
  115.    I have put in some code to help determine the cause of 
  116. errors.  When a detectable error occurs in this program, a
  117. Window will pop up with a message and the amount of free
  118. chip RAM and fast RAM.  If either of these numbers are small,
  119. you may be running out of memory.  Try to free some memory
  120. and try again.  Read the message.  If the message says "Can not 
  121. open translator.library V37 or above," check to see that you have 
  122. that library and it is the correct version.
  123.  
  124.    When opening devices, there is not a field to indicate what
  125. version of the device to open, so this program will just open
  126. any narrator.device on disk.  If things are not working like
  127. you would think they should, (example: face is not moving,
  128. changing gadget values does not affect voice), go to the shell
  129. and do a "version narrator.device".  If it does not specifically
  130. say version 37 or above, then you have the wrong version.
  131.  
  132.    There is only one error, at least of that I know, that will
  133. cause the program to fail without a message, and that is the
  134. incorrect or missing "intuition.library" or not enough memory
  135. to open this library.  Without this library, a window can not
  136. be opened to indicate the error.
  137.  
  138.    If you can not determine the cause of the error or the 
  139. program fails without a detectable error, please send me the 
  140. configuration of your system, other programs that were running at 
  141. the time, and any other information you feel is important.   
  142.  
  143. Contacting the author:
  144.  
  145.       e-mail      kgroombr@hereford.ampr.org
  146.  
  147.       snail-mail  Kenton Groombridge
  148.                   1405 North Center Avenue
  149.                   Hardin, MT  59034
  150.                   USA
  151.  
  152. Acknowledgments:
  153.  
  154.    This version of the program is written using SAS/C 6.57.
  155. SAS/C is a great program, and I hope that they continue support 
  156. for the Amiga.  Thanks to the SAS/C Amiga developers for the
  157. patches written after Commodore's death.
  158.  
  159. To do:
  160.  
  161. 1. Tool types for user configurability.
  162. 2. File requester.
  163. 3. Command line operation that parses arguments.
  164. 4. Switch characters so that the speech can change while
  165. speaking.
  166. 5. Add "Stop" button so that speech can be interupted.
  167. 6. Sizable main window.  I am not using MUI!
  168. 7. Add menu with items such as "About", "Open", and "Quit".
  169. 8. Make font sensitive.
  170. 9. Add localization.
  171. 10.   Different faces for the "Face" window.
  172. 11.   Make certain windows optionable such as "Face", and "Console 
  173. output."
  174. 12.   Convert documentation into AmigaGuide format.
  175. 13.   Make a pretty icon.
  176. 14.   Requester that opens when trying to run another instance of
  177. the program.  Requester will have a bring to front button and an
  178. OK button.  At the moment, there is no requester at all so if the
  179. SayMore window can't be seen, trying to launch the program may
  180. give indication that it is failing.
  181. 15.   ARexx port.  Wouldn't it be nifty to make your programs
  182. speak?
  183. 16.   Options to follow at the request of users.
  184.  
  185. Revision history:
  186.  
  187. 0.10B
  188. Written in assembler.  It was not user friendly, but it worked.
  189.  
  190. 0.20
  191. Ported to C and made several enhancements.
  192.  
  193. 0.25
  194. Fixed a bug in error reporting.  It reported that it could not 
  195. create the console message port when it could not open 
  196. translator.library and vice-versa.
  197.  
  198. Included the correct documentation.                                         
  199.  
  200. 0.30
  201. Fixed bug with the console_task that caused messages to get 
  202. passed to the wrong instance of the program when two or more 
  203. instances of the program were loaded.
  204.  
  205. Changed translate_buffer's size to account for the largest 
  206. possible translate string (I hope).                     
  207.  
  208. Discovered a bug in translator.library.  When it handles large 
  209. strings of consecutive numbers, it  will skip numbers every 100 
  210. numbers it processes.  The tranlate_buffer's size accounts for 
  211. the largest string possible when or if this bug is ever fixed.                     
  212.  
  213. Found a bug with the creation of the console_task.  If 
  214. console_task tried to find it's parents message port before the 
  215. port was added to the system list, it would crash with a Guru 
  216. 80000008.  I could not find a way to completely fix this bug.  I 
  217. did make it where the parent's message port is added to the 
  218. system list way before the spawned task should ask for it.  The 
  219. only way I know to fix this is to have only one instance of 
  220. SayMore running at a time.  If at anytime you get this error, 
  221. please let me know, and I will work harder to try to eliminate 
  222. this bug.                     
  223.  
  224. Added "Face" window.  It is ugly, but it is a start.
  225.  
  226. 0.33
  227. Changed code so that only one instance of SayMore can run at a
  228. time.  There really is no reason for two instances since only
  229. one narrator.device can be open at any one time.  If you were
  230. getting that 80000008 Guru, it will be gone now.
  231.  
  232. Fixed "Face" window so that it works with different size
  233. borders (urouhack).  Eliminated the GimmeZeroZero window for
  234. face and rewrote the drawing routines so less system
  235. resources are required and speed in increased.
  236.  
  237. Now uses EasyRequest() to print error messages.  This is good
  238. news for those Amiga monitors that don't sync down to 15KHz.
  239.  
  240. "Face" window now uses a diamond mouth.  Don't worry, future
  241. versions will have user configurable mouths.  This is just for
  242. testing since I am certain that the oval mouth functions
  243. properly.
  244.